Digital images are nowadays used in many different applications, a case in point being such traditional acquisition devices as digital still and video cameras. One must also expect an ever greater use of digital images in devices of the new generation, for example, in mobile multimedia communication terminals.
There exist numerous devices or applications that use digital images acquired in sequence, i.e., images acquired with a brief time interval between one image and the next and representing approximately one and the same real scene.
The acquisition rate of the sequence, i.e., the number of images acquired in a given time interval, may vary in accordance with the specific applications; for example, the rate will be very high in digital video cameras (about 25 images per second) and lower in mobile communication terminals (about 15 images per second) that acquire the digital images and transmit them in real time to a remote terminal.
The number of digital images comprised in the sequence can likewise vary within wide limits: for example, the sequence may contain a large number of images (video sequence), but there are also many known specific applications of digital photography for which it is sufficient to acquire sequences containing just a few images (two or three, for example).
It is known that the image sequences are often affected by unwanted displacements/motions between images produced in the acquisition phase. Such unwanted motions may be due to, for example, vibrations, fluctuations or micro-oscillations of the acquisition device during the acquisition of the sequence.
There are several known compensation or correction techniques intended to reduce or eliminate these unwanted motions. For example, in digital image processing—and especially in digital photography applications—there are known various techniques that are generally referred to as alignment/registration techniques. When this term is used hereinafter, it is intended to refer particularly to the correction of unwanted motion in sequences that comprise few images (photography or still camera applications).
When digital sequences are acquired for generic video applications, on the other hand, the techniques for compensating these unwanted motions are commonly known by the name of stabilization techniques. When this term is used hereinafter, it is intended to refer particularly to the correction of unwanted motion in sequences that comprise a large number of images (video applications).
In particular, the stabilization of video sequences plays an important part, because—as is well known to persons skilled in the art—it not only eliminates unpleasant oscillations and vibrations that would be visible in the reproduction of these sequences (a film, for example), but also makes it possible to obtain a greater compression efficiency when the sequences are encoded by means of encoding/compression techniques that operate, for example, in accordance with the MPEG standard or the H263 standard and are nowadays extensively used in the greater part of the available commercial devices.
Conventionally, both the alignment/registration techniques and the stabilization techniques correct the acquired sequence after a phase of estimating the relative motions between image pairs of the sequence. This phase, which will hereinafter be referred to as the motion estimation (or Mot_Est) phase, produces an estimate of the motion of the sequence by evaluating, for example, the motion of each image of the sequence with respect to a reference image.
In particular, techniques of motion estimation between a first and a second image that use a motion model on the basis of which the second image corresponds substantially to a rigid rotation/translation of the first image are known by the name of “global motion” techniques. Commonly, the motion model is further simplified and in actual fact the global motion estimation produces an estimation of the relative motion/misalignment between a pair of images in the form of a global motion vector with a vertical translation component and a horizontal translation component.
On the other hand, techniques that characterize the relative motion between a pair of images in the form of a plurality of relative motions between corresponding portions of the pair of images are known as “local motion” estimation techniques. These techniques produce a plurality of local motion vectors (with, for example, vertical and horizontal translation components), each of which is associated with a particular portion of the image.
Though satisfactory in many different respects, the known motion estimation techniques for image sequences are associated with numerous drawbacks and problems bound up with, among others, inadequate performance, complex computations or implementation costs of such an order as to make it difficult to employ them in commercial portable acquisition devices.
Obviously, given these drawbacks/problems, the unwanted motion correction methods known to the state of the art, especially the stabilization methods, based on these known motion estimation techniques are found to be unsatisfactory on account of at least the same reasons.